<?php
	 include_once("interfaces/FuncionarioDao.php");
	 class MovimentacaoDaoImp implements MovimentacaoDao{
		//armazena a conexão com o BD
        private $conn;
		
	
		public function __construct(){
			require_once("Conexao.class.php");
			$con = new Conexao;
			$this->conn = $con->conectar();
		}
		
		public function inserir($mov){
			try{
				//Executa a instruação sql
				$result = $this->conn->exec("Insert into movimentacao values(default, {$mov->getRequisicao()}, {$mov->getCategoria()},{$mov->getValor()},'{$mov->getDescricao()}',{$mov->getConfirmada()},{$mov->getDepOrigem()},{$mov->getDepBeneficiado()}, {$mov->getData()})");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}catch(Exception $e){
				print "Erro: ".$e->getMessage()."\n";
			}
			
			return $result;
			
		}
	 
	 public function deletar($mov){			
			try{			
				//Executa a instruação sql
				$result = $this->conn->exec("Delete from movimentacao where id = {$mov->getId()}");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
			
			return $result;
	 }
	 
	 public function alterar($mov){			
			try{			
				//Executa a instruação sql
				$result = $this->conn->exec("Update movimentacao set idRequisicao = {$mov->getRequisicao()}, idCategoria = {$mov->getCategoria()}, valor ={$mov->getValor()}, descricao = '{$mov->getDescricao()}', confirmada = {$mov->getConfirmada()}, depOrigem = {$mov->getDepOrigem()}, depBeneficiado = {$mov->getDepBeneficiado()}, date = {$mov->getData()} where idMovimentacao = {$mov->getId()}");

			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
			return $result;
	 }
	 
	 
	 
	 
	 /*CONTINUAR DAQUI*/ 
	 public function buscarValor($valor){
		 try{
				//Executa a instruação sql
				$result = $this->conn->query("Select * from movimentacao where valor = {$valor}");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
		return $result;
	 }
	 
	 
	 public function buscarId($id){
		 try{
				//Executa a instruação sql
				$result = $this->conn->query("Select * from movimentacao where idMovimentacao = {$id}");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
		return $result;
	 }
	 
	 public function __destruct(){
		//fecha a conexão
		$this->conn=null;
	 }
}
			
			
	
?>